Volver al Artículo
Ejecución automática
Descargar código fuente

Ejecución automática

Fecha de publicación

26 de junio de 2025

La ejecución automática de los scripts para generar los resultados se gestiona con el paquete {targets} [1].

Es requisito crear un archivo _targets.R en el directorio raíz que contenga las instrucciones a fin de ejecutar en orden todos los comandos y las dependencias.

Inicialmente se carga el mismo paquete {targets}, luego se activan las librerías seleccionadas y se leen todas las funciones personalizadas.

In [1]:
_targets.R
library(targets)
tar_option_set(packages = c("glue", "terra", "tidyverse"))
source("scripts_targets/funciones.R")

Luego se crea una lista que contiene todos los objetivos dados por las funciones.

In [2]:
_targets.R
list(
  tar_target(
    name = excel,
    command = archivo_excel(),
    format = "file"
  ),
  tar_target(
    name = manuscrito,
    command = archivo_quarto(),
    format = "file"
  ),
  tar_target(
    name = fecha_actual,
    command = fecha(archivo_i = excel)
  ),
  tar_target(
    name = recorte_tif,
    command = recorte(fecha_i = fecha_actual),
    format = "file"
  ),
  tar_target(
    name = datos_gis,
    command = reflectancia(
      fecha_i = fecha_actual, archivo_i = excel
    ),
    format = "file"
  ),
  tar_target(
    name = datos_lab,
    command = lab(excel),
    format = "file"
  ),
  tarchetypes::tar_quarto(
    name = render_manuscrito,
    path = "."
  )
)
1
Archivo Excel, con la fecha y sitios de muestreo.
2
Archivo Quarto con el contenido del manuscrito, archivo principal del proyecto.
3
Fecha del último muestreo.
4
Recorto el producto al área de interés.
5
Extraigo los valores de píxel.
6
Extraigo parámetros de laboratorio.
7
Renderizo manuscrito generando la versión web y en formato pdf.

La manera en la que se conectan las funciones mencionadas y las dependencias internas entre ellas puede visualizarse en el siguiente diagrama de flujo.

In [3]:

graph LR
  x2eb57580dd338e28(["excel"]) ==> x75ae8feee719d1e2(["datos_gis"])
  x27cf98eb0536b3cc(["fecha_actual"]) ==> x75ae8feee719d1e2(["datos_gis"])
  x0dc39fa9e42347ba>"reflectancia"] ==> x75ae8feee719d1e2(["datos_gis"])
  x2eb57580dd338e28(["excel"]) ==> x1a91c1978c7a143b(["datos_lab"])
  x38637a02f9b83fc8>"lab"] ==> x1a91c1978c7a143b(["datos_lab"])
  x29bd13377b9e6171>"archivo_excel"] ==> x2eb57580dd338e28(["excel"])
  x2eb57580dd338e28(["excel"]) ==> x27cf98eb0536b3cc(["fecha_actual"])
  xfabd587be49f2fed>"fecha"] ==> x27cf98eb0536b3cc(["fecha_actual"])
  xfabd587be49f2fed>"fecha"] ==> x38637a02f9b83fc8>"lab"]
  xc36834a08989fd92>"archivo_quarto"] ==> x0cceab94dc3cb992(["manuscrito"])
  xc856c5bfddbb40a5{{"bandas_s2"}} ==> xc5ec810879cc40ee>"recorte"]
  x9505d3eeeff3a790{{"puntos_muestreo"}} ==> xc5ec810879cc40ee>"recorte"]
  x27cf98eb0536b3cc(["fecha_actual"]) ==> x4b150ba8dbe4203d(["recorte_tif"])
  xc5ec810879cc40ee>"recorte"] ==> x4b150ba8dbe4203d(["recorte_tif"])
  x3d474db92cf09724>"mensaje"] ==> x0dc39fa9e42347ba>"reflectancia"]
  xfabd587be49f2fed>"fecha"] ==> x0dc39fa9e42347ba>"reflectancia"]
  xcac90a77a625823f(["render_manuscrito"])
  
  classDef default stroke:#FFFFFF,color:#FFFFFF,fill:#B86092;

Bibliografía

[1]
W. M. Landau, «The targets R package: a dynamic Make-like function-oriented pipeline toolkit for reproducibility and high-performance computing», Journal of Open Source Software, vol. 6, n.º 57, p. 2959, 2021, Disponible en: https://doi.org/10.21105/joss.02959